<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>对象</title>
	</head>
	<body>
	</body>
	<!--
		对象
			一、对象的创建
				JS 创建自定义对象，主要通过三种方式：字面量形式创建对象、通过new Object对象创建 、通过Object对象的create方法创建对象。
				1. 字面量形式创建对象
					var 对象名 = {}; // 空对象
					var 对象名 = {
						键:值,
						键:值,
						...
					};

				2. 通过new Object创建
					var 对象名 = new Object(); // 空对象

				3. 通过Object对象的create方法创建
					var 对象名 = Object.create(null); // 创建空对象
					var 对象名 = Object.create(参考对象); // 以参考对象为模板，创建新的对象


				赋值：对象名.键 = 值 （如果键存在，则表示修改数据；如果键不存在，则表示添加数据）

			二、对象的序列化和反序列化

			三、this
	 -->


	 <script type="text/javascript">


		var school = {};
		school.name = "集美大学";
		console.log(school);

	 	/* 对象的创建 */
		// 1. 字面量形式创建对象
		var obj = {}; // 空对象
		obj.uname = "zhangsan"
		obj.uage =18;
		console.log(obj);
		// 非空对象 （键都是字符串，值可以是六种数据类型中任意一种）
		var obj2 = {
			uname:"zhangsan", // 字符串
			uage:18, // 数值
			islike:true, // 布尔值
			sayHello:function(){ // 函数
				console.log("Hello...");
			},
			cats:['大毛','喵喵'], // 数组
			dog:{ // 对象
				name:"张二狗",
				age:1
			}
		};
		console.log(obj2);
		console.log(obj2.uname);
		obj2.sayHello(); // 方法调用模式
		obj2.uage = 19;

		// 2. 通过new Object创建
		var obj3 = new Object();
		obj3.name="lisa";
		console.log(obj3);

		// 3. 通过Object对象的create方法创建
		var obj4 = Object.create(null);
		console.log(obj4.name);
		var obj5 = Object.create(obj3);
		console.log(obj5.name);

	 </script>

</html>
